package com.wiselink.coupang.productcatalog.request;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 平台商品 platform_product
 *
 * @date 2024-09-12
 */
@Data
public class PlatformProduct implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 平台商品id
     */
    private Long id;

    /**
     * 显示品类代码
     */
    private String displayCategoryCode;

    /**
     * 注册商品ID（商品注册接口返回）
     */
    private String sellerProductId;

    /**
     * 注册商品ID2（商品注册接口返回）
     */
    private String sellerProductId2;

    /**
     * 注册商品ID3（商品注册接口返回）
     */
    private String sellerProductId3;

    /**
     * 注册商品名
     */
    private String sellerProductName;

    /**
     * 卖家id
     */
    private String vendorId;

    /**
     * 销售开始日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date saleStartedAt;

    /**
     * 销售结束日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date saleEndedAt;

    /**
     * 显示商品名
     */
    private String displayProductName;

    /**
     * 品牌
     */
    private String brand;

    /**
     * 商品名
     */
    private String generalProductName;

    /**
     * 商品群
     */
    private String productGroup;

    /**
     * 配送方式
     */
    private String deliveryMethod;

    /**
     * 物流公司代码
     */
    private String deliveryCompanyCode;

    /**
     * 配送费类型
     */
    private String deliveryChargeType;

    /**
     * 基本运费
     */
    private BigDecimal deliveryCharge;

    /**
     * 免运费门槛
     */
    private BigDecimal freeShipOverAmount;

    /**
     * 初始退货运费
     */
    private BigDecimal deliveryChargeOnReturn;

    /**
     * 偏远地区配送与否
     */
    private String remoteAreaDeliverable;

    /**
     * 捆绑配送与否
     */
    private String unionDeliveryType;

    /**
     * 退货中心代码
     */
    private String returnCenterCode;

    /**
     * 退货地名称
     */
    private String returnChargeName;

    /**
     * 退货地联系方式
     */
    private String companyContactNumber;

    /**
     * 退货地邮政编码
     */
    private String returnZipCode;

    /**
     * 退货地址
     */
    private String returnAddress;

    /**
     * 退货地详细地址
     */
    private String returnAddressDetail;

    /**
     * 退货运费
     */
    private BigDecimal returnCharge;

    /**
     * 发货地代码
     */
    private String outboundShippingPlaceCode;

    /**
     * 真实用户id
     */
    private String vendorUserId;

    /**
     * 是否自动申请批准
     */
    private Boolean requested;

    /**
     * 卖家商品属性列表
     */
    private String items;

    /**
     * 必须提交所需文件时输入
     */
    private String requiredDocuments;

    /**
     * 订制指南
     */
    private String extraInfoMessage;

    /**
     * 制造商
     */
    private String manufacture;

    /**
     * 注册商品状态 coupang：（0 审批中/ 1 临时保存/ 2 待审批/ 3 已批准/ 4 部分批准/ 5 未通过审批/ 6 商品已删除）
     */
    private String statusName;

    // 电商平台编码
    private String platformCode;
    // 电商店铺ID
    private Long shopId;

    // 电商平台名称
    private String platformName;
    // 页面 调用下一页的关键值  调用第一页时，不要输入或输入'1'
    private Long nextToken;
    // 每页件数 默认值：10；最大值: 100
    private Long maxPerPage;

}
